package com.ruoyi.media.domain;

import java.time.LocalDateTime;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.*;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 图片管理对象 tb_images
 * 
 * @author crocodilePole
 * @date 2024-11-14
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class Images extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 唯一标识每张图片的ID */
    private Long id;

    /** 图片文件名 */
    @Excel(name = "图片文件名")
    private String fileName;



    /** 图片上传时间 */
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "图片上传时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime uploadTime;

    /** 图片描述 */
    @Excel(name = "图片描述")
    private String description;

    /** 图片存储路径 */
    @Excel(name = "图片存储路径")
    private String storagePath;

    /** 上传用户ID，关联用户表 */
    @Excel(name = "上传用户ID，关联用户表")
    private Long userId;

    /** 图片类型，例如JPEG、PNG等 */
    @Excel(name = "图片类型，例如JPEG、PNG等")
    private String imageType;

    /** 图片拍摄时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "图片拍摄时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime captureTime;

    /** 图片隐私设置 */
    @Excel(name = "图片隐私设置")
    private Integer privacySetting;

    /** 经度 */
    @Excel(name = "经度")
    private Double longitude;

    /** 纬度 */
    @Excel(name = "纬度")
    private Double latitude;

    /** 逻辑删除标志，1表示已删除，0表示未删除 */
    @Excel(name = "逻辑删除标志，1表示已删除，0表示未删除")
    private Long isDeleted;

    /**
     * 图片所属分类ID
     */
    @Excel(name = "分类id")
    private Long categoryId;
/**
     * 图片所属分类名称
     */
    @Excel(name = "分类名称")
    private String categoryName;



}
